package com.lmind.core.message;

import com.lmind.core.async.ResultHandler;

/**
 * 
 * @author 刘勉
 *
 */
public interface DuplexMessagePipe extends MessagePipe {
	
	/**
	 * 设置为管道另一端的请求设置消息处理器
	 * @param processor
	 */
	void setAsyncMessageProcessor(AsyncMessageProcessor<DuplexMessagePipe, Object> processor);
	
	/**
	 * 向管道的另一端发送请求,并获取响应
	 * @param message 请求消息
	 * @param handler 通过此接口异步获得响应
	 */
	void request(Object message, ResultHandler<Object> handler);
	

}
